package com.kgc.smbms.mapper;

import com.kgc.smbms.bean.User;
import com.kgc.smbms.utils.PageSupport;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * Created On : 24/8/2022.
 * <p>
 * Author : huayu
 * <p>
 * Description: UserMapper
 */
public interface UserMapper {

    //校验用户登录信息
    User selectUserByCOdeAndPwd(@Param("loginUserCode") String loginUserCode, @Param("loginUserPassword") String loginUserPassword);

    //条件 分页 查询用户列表
    List<User> SelectUserListByQueryNameAndQueryUserRole(@Param("queryName") String queryName, @Param("QueryUserRole") Integer QueryUserRole, @Param("pageSupport") PageSupport pageSupport);

    //根据用户 id 查询用户详情
    User selectUserById(@Param("id") Integer id);

    //修改用户信息
    int updateUserInfo(@Param("userForm") User userForm);

    //根据用户id删除用户信息
    int delUserById(@Param("id") Integer id);


    //添加用户信息
    int insertUserInfo(@Param("userForm") User userForm);

    //修改用户密码
    int userPasswordMod(@Param("userId") Integer userId,@Param("newPassword") String newPassword);

    //条件查询用户列表  总数
    Map<String,Long> selectUserListTotalByQueryNameAndQueryUserRole(@Param("queryName") String queryName, @Param("QueryUserRole") Integer QueryUserRole);
//    int selectUserListTotalByQueryNameAndQueryUserRole(@Param("queryName") String queryName, @Param("QueryUserRole") Integer QueryUserRole);


    //根据用户编码查看用户详情
    User selectUserByUserCode(@Param("userCode") String userCode);

}
